package top.pmwly;

/**
 * @author Herther
 * @version 1.0.0
 * @ClassName SelectionSortT.java
 * @Description 使用泛型
 * @createTime 2021年08月15日 18:05:00
 */
public class SelectionSortT {

    public static <T extends Comparable<T>> void sort(T[] data){

        for (int i=0;i< data.length;i++){
            int min = i;
            for (int j=i;j<data.length;j++){
                if (data[j].compareTo(data[min])<0){
                    min = j;
                }
            }
            swep(data,i,min);
        }

    }

    private static <T> void swep(T[] data, int i, int min) {
        T k = data[i];
        data[i] = data[min];
        data[min] = k;
    }

    public static void main(String[] args) {
        Integer[] arr ={1,7,9,10,19,6};
        System.out.print("排序前：");
        for (Integer n: arr) {
            System.out.print(n+" ");
        }
        System.out.println();
        sort(arr);
        System.out.print("排序后：");
        for (Integer n: arr) {
            System.out.print(n+" ");
        }
    }

}
